Detecting Patterns of Poor Design Solutions Using Constraint Propagation
نویسندگان
چکیده
We are proposing an approach for applying design patterns that consists of recognizing occurrences of the modeling problem solved by the design pattern (problem pattern) in input models, which are then transformed according to the solution proposed by the design pattern (solution pattern). In this paper, we look at the issue of identifying instances of problem patterns in input models, and marking the appropriate entities so that the appropriate transformations can be applied. Model marking within the context of MDA is a notoriously difficult problem, in part because of the structural complexity of the patterns that we look for, and in part because of the required design knowledgeand expertise. Our representation of design problem patterns makes it relatively easy to express the pattern matching problem as a constraint satisfaction problem. In this paper, we present our representation of design problem patterns, show how matching such patterns can be expressed as a constraint satisfaction problem, and present an implementation using ILOG JSolver, a commercial CSP solver.
منابع مشابه
Optimizing Bit Vector Algorithm for Anti-Pattern Detection
A lot of good and bad practices are known to software engineering, which proves to be a threat to software quality. With reference to software quality in software, in the field of software design and source code quality, Design patterns are referred to as good practices and Anti-Patterns are referred to as bad practices. Anti-Pattern are for example known strategies, which are poor solutions of...
متن کاملRandomised Backtracking for Linear Pseudo-Boolean Constraint Problems
Many constraint satisfaction and optimisation problems can be expressed using linear constraints on pseudo-Boolean (0/1) variables. Problems expressed in this form are usually solved by integer programming techniques, but good results have also been obtained using generalisations of SAT algorithms based on both backtracking and local search. A recent class of algorithm uses randomised backtrack...
متن کاملExploitation de la monotonie des fonctions dans la propagation de contraintes sur intervalles
We propose a new interval constraint propagation algorithm, called MOnotonic Hull Consistency (Mohc), that exploits monotonicity of functions. The propagation is standard, but the Mohc-Revise procedure, used to filter/contract the variable domains w.r.t. an individual constraint, uses monotonic versions of the classical HC4Revise and BoxNarrow procedures. Mohc-Revise appears to be the first ada...
متن کاملExtending Forward Checking
Among backtracking based algorithms for constraint satisfaction problems (CSPs), algorithms employing constraint propagation, like forward checking (FC) and MAC, have had the most practical impact. These algorithms use constraint propagation during search to prune inconsistent values from the domains of the uninstantiated variables. In this paper we present a general approach to extending const...
متن کاملEnumeration of Dominant Solutions: An Application in Transport Network Design
A One-Dimensional Binary Integer Programming Problem (1DB-IPP) is concerned with selecting a subset from a set of k items in budget constraint to optimize an objective function. In this problem a dominant solution is defined as a feasible selection to which no further item could be added in budget constraint. This paper presents a simple algorithm for Enumeration of Dominant Solutions (EDS) and...
متن کامل